package com.ruoyi.detail.domain;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 明细对象 detail
 * 
 * @author ucu
 * @date 2024-05-05
 */
public class Detail extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** ID */
    private Long id;

    /** 用户ID */
//    @Excel(name = "用户ID")
    private Long userId;

    /** 名称1 */
    @Excel(name = "外文名称")
    private String name1;

    /** 名称2 */
    @Excel(name = "中文名称")
    private String name2;

    /** 详情 */
    @Excel(name = "简介")
    private String detail;

    /** 类型
     * 对应字典 detail_type */
    @Excel(name = "类型", readConverterExp = "0=不确定,1=动漫,11=动漫库,2=电视剧,21=电视剧库,3=纪录片,31=纪录片库,4=电影,41=电影库,5=漫画,51=漫画库,6=书籍,61=书籍库")
    private Long type;

    /** 名称 */
//    @Excel(name = "库对应的ID")
    private Long typeId;

    /** 第几集 */
    @Excel(name = "第几集")
    private Long toThis;

    /** 有几集 */
    @Excel(name = "有几集")
    private Long have;

    /** 第几季 */
    @Excel(name = "第几季")
    private Long season;

    /** 最近观看时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "最近观看时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date toTime;

    /** 更新时间 */
    private String renew;

    /** 链接 */
    @Excel(name = "链接")
    private String url;

    /** 状态
     * 对应字典 detail_status*/
    @Excel(name = "状态", readConverterExp = "1=已完结,2=未完结,3=重看,4=预告")
    private Long status;

    /** 平台 */
    @Excel(name = "平台")
    private Long vendor;

    /** 图片 */
    @Excel(name = "图片")
    private String picture;

    /** 图片地址 */
    @Excel(name = "图片地址")
    private String pictureUrl;

    /** 重看时间 */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @Excel(name = "重看时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
    private Date reTime;

    public void setId(Long id) 
    {
        this.id = id;
    }

    public Long getId() 
    {
        return id;
    }
    public void setUserId(Long userId) 
    {
        this.userId = userId;
    }

    public Long getUserId() 
    {
        return userId;
    }
    public void setName1(String name1) 
    {
        this.name1 = name1;
    }

    public String getName1() 
    {
        return name1;
    }
    public void setName2(String name2) 
    {
        this.name2 = name2;
    }

    public String getName2() 
    {
        return name2;
    }
    public void setDetail(String detail) 
    {
        this.detail = detail;
    }

    public String getDetail() 
    {
        return detail;
    }
    public void setType(Long type) 
    {
        this.type = type;
    }

    public Long getType() 
    {
        return type;
    }
    public void setTypeId(Long typeId) 
    {
        this.typeId = typeId;
    }

    public Long getTypeId() 
    {
        return typeId;
    }
    public void setToThis(Long toThis) 
    {
        this.toThis = toThis;
    }

    public Long getToThis() 
    {
        return toThis;
    }
    public void setHave(Long have) 
    {
        this.have = have;
    }

    public Long getHave() 
    {
        return have;
    }
    public void setSeason(Long season) 
    {
        this.season = season;
    }

    public Long getSeason() 
    {
        return season;
    }
    public void setToTime(Date toTime) 
    {
        this.toTime = toTime;
    }

    public Date getToTime() 
    {
        return toTime;
    }
    public void setRenew(String renew) 
    {
        this.renew = renew;
    }

    public String getRenew() 
    {
        return renew;
    }
    public void setUrl(String url) 
    {
        this.url = url;
    }

    public String getUrl() 
    {
        return url;
    }
    public void setStatus(Long status) 
    {
        this.status = status;
    }

    public Long getStatus() 
    {
        return status;
    }
    public void setVendor(Long vendor) 
    {
        this.vendor = vendor;
    }

    public Long getVendor() 
    {
        return vendor;
    }
    public void setPicture(String picture) 
    {
        this.picture = picture;
    }

    public String getPicture() 
    {
        return picture;
    }
    public void setPictureUrl(String pictureUrl) 
    {
        this.pictureUrl = pictureUrl;
    }

    public String getPictureUrl() 
    {
        return pictureUrl;
    }
    public void setReTime(Date reTime) 
    {
        this.reTime = reTime;
    }

    public Date getReTime() 
    {
        return reTime;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("userId", getUserId())
            .append("name1", getName1())
            .append("name2", getName2())
            .append("detail", getDetail())
            .append("type", getType())
            .append("typeId", getTypeId())
            .append("toThis", getToThis())
            .append("have", getHave())
            .append("season", getSeason())
            .append("toTime", getToTime())
            .append("renew", getRenew())
            .append("url", getUrl())
            .append("status", getStatus())
            .append("vendor", getVendor())
            .append("picture", getPicture())
            .append("pictureUrl", getPictureUrl())
            .append("reTime", getReTime())
            .append("remark", getRemark())
            .toString();
    }
}
